package seqlist.leetcode;

public class Num82 {
    public ListNode deleteDuplicates(ListNode head) {
//          ListNode dummyHead = new ListNode();
//          dummyHead.next=head;
//          ListNode prev=dummyHead;
//          ListNode cur = prev.next;


//          while (cur!=null){
//              ListNode next=cur.next;
//              if (next==null){
//                  break;
//              }else {
//                  if (cur.val!=next.val){
//                      prev=prev.next;
//                      cur=cur.next;
//                  }else {
//                      while (next!=null&&cur.val== next.val){
//                          next=next.next;
//                      }
//                      prev.next=next;
//                      cur=next;
//                  }
//              }
//          }
//          return dummyHead.next;


//        while (cur!=null){
//            ListNode next=cur.next;
//            if (next==null){
//                break;
//            }
//            if (cur.val!=next.val){
//                prev=prev.next;
//                cur=cur.next;
//            }else if (cur.val==next.val){
//                while (next!=null&&cur.val==next.val){
//                    next=next.next;
//                }
//                prev.next=next;
//                cur=next;
//            }
//        }
//        return dummyHead.next;


        if (head==null||head.next==null){
            return head;
        }
        if (head.val!=head.next.val){

            head.next= deleteDuplicates(head.next);
            return head;
        }else{
            ListNode nexthead=head.next;
            while (nexthead!=null&&head.val==nexthead.val){
                nexthead=nexthead.next;
            }
            return deleteDuplicates(nexthead);
        }
    }
}
